export function getWeekDay(dateStr: string): { cn: string; en: string } {
  const days = [
    { cn: '周日', en: 'Sun' },
    { cn: '周一', en: 'Mon' },
    { cn: '周二', en: 'Tue' },
    { cn: '周三', en: 'Wed' },
    { cn: '周四', en: 'Thu' },
    { cn: '周五', en: 'Fri' },
    { cn: '周六', en: 'Sat' }
  ]

  const date = new Date(dateStr)
  if (isNaN(date.getTime())) throw new Error(`无效的日期格式: ${dateStr}`)

  const dayIndex = date.getDay()
  return days[dayIndex]
}

/**
 * 判断订单时间是否大于当前时间 24 小时之后
 * @param orderTime 订单时间，格式如 '2025-06-07 12:00:00'
 * @returns {boolean} 是否超过当前时间 24 小时之后
 */
export function isOrderTimeAfter24Hours(orderTime: string): boolean {
  const orderDate = new Date(orderTime)
  const now = new Date()
  if (isNaN(orderDate.getTime())) {
    throw new Error('无效的订单时间格式')
  }

  // 当前时间 + 24 小时
  const nowPlus24Hours = new Date(now.getTime() + 24 * 60 * 60 * 1000)

  // 如果订单时间 > 当前时间 + 24 小时，则返回 true
  return orderDate > nowPlus24Hours
}

export const formatTimeRange = (startTime: string, endTime: string): string => {
  // 辅助函数：将 'YYYY-MM-DD HH:mm:ss' 转换为 ['MM', 'DD', 'YYYY']
  const parseDateParts = (dateStr: string): string[] => {
    return dateStr.split(' ')[0].split('-') // 先分割成 ['YYYY', 'MM', 'DD']
  }

  const startParts = parseDateParts(startTime) // ['2025', '05', '09']
  const endParts = parseDateParts(endTime) // ['2025', '06', '28']

  // 构造格式 MM.DD.YYYY
  const formatDate = (parts: string[]): string => {
    return `${parts[1]}.${parts[2]}.${parts[0]}`
  }

  if (startParts[0] === endParts[0]) {
    // 同一年，只显示一次年份在结尾
    return `${startParts[1]}.${startParts[2]} - ${endParts[1]}.${endParts[2]}.${endParts[0]}`
  } else {
    // 不同年，都显示完整格式
    return `${formatDate(startParts)} - ${formatDate(endParts)}`
  }
}
